The present invention relates to the field of controlling a scroll function in a digital processing system. In particular, the present invention relates to controlling and presenting information pertaining to scrolling of an on-screen document.
A user interface is the means by which a user interacts with a digital processing system, such as a computer system. Known user interfaces utilize windows in conjunction with a cursor control device. The cursor control device, commonly a mouse, trackball, or stylus device, is used to position a cursor in a window. The cursor control device typically includes a switch (e.g., a mouse button) having at least two positions for generating signals to the computer to indicate a selection or other action by a user. The window typically includes a data display area to display viewable data such as, for example, text documents, spreadsheets, sound and video objects.
When a document or other data that is being displayed within the window is larger than the data display area or the window, some of the data is xe2x80x9chiddenxe2x80x9d. This xe2x80x9chiddenxe2x80x9d data can be brought into the data display area through scrolling. Scrolling refers to moving the data/document in a user-defined direction in order to bring xe2x80x9chiddenxe2x80x9d portions within the data display area. Known window interfaces provide different methods for scrolling. One method is to provide predetermined scroll areas where scrolling can be invoked; e.g., scroll bars, scroll arrows or scroll boxes. Using this method, the user positions the cursor in the scroll area and a switch associated with the cursor control device is placed in a predetermined position or clicked. Scrolling will occur in a direction and manner associated with the particular scroll area. A second method is to initiate scrolling whenever the computer system detects that a cursor is on or near the edge of the window and a switch associated with the cursor control device is in a predetermined position. Scrolling will then occur in a corresponding direction of the window edge detected. A third known method, primarily used in application software, allows a user to select an icon from a function palette, to enable the cursor to control movement of the data within the window in a corresponding fashion. This action is analogous to moving a flat piece of paper around on a desk with one""s hand.
Common user interfaces allow the user to control the scroll amount. The scroll amount represents how much of an on-screen document scrolls when triggered by a user interaction with the cursor control device. However, known user interfaces are limited to textual methods for depicting and adjusting the scroll amount. Specifically, a user interface typically either provides an input field where the user may specify the desired scroll amount (e.g., a number of lines to be scrolled upon the user""s movement of the cursor control device) or a xe2x80x9cpop-upxe2x80x9d or pull down menu to display a list of several options for the scroll amount. While these textual methods of depicting the scroll amount may be an acceptable way of presenting this information, the lists or menus may not be easily alterable and the alteration operations are not intuitive. Thus, it is desirable to provide a more psycho-physically meaningful and visually communicative method of graphically depicting and adjusting the scroll amount of an on-screen document.
Further, known scrolling methods do not provide a coasting function when various cursor control devices are used to scroll an on-screen document. The coasting function allows the user to continue scrolling the document after the user interaction with the cursor control device has ended. Some existing scrolling methods provide a coasting feature only when a trackpad device is used to scroll the on-screen document. In addition, this coasting feature is not triggered unless the user interaction with the trackpad ends at a certain portion of the trackpad. Thus, it is desirable to provide an improved scrolling functionality with a coasting feature available with use of any cursor control device.
The present invention relates to various aspects for controlling and presenting information concerning scrolling of an on-screen document.
In one aspect of the invention, an exemplary method of the invention generates a graphical user interface to provide functionality of controlling a scroll amount for an on-screen document. In this method, a graphical representation of a scroll activator is displayed to enable the user to activate the scroll function using a cursor control device. In addition, multiple scroll amount indicators are also displayed along with the graphical representation of the scroll activator. The multiple scroll amount indicators graphically illustrate various magnitudes of scrolling. In one typical example of this method, a slider may be placed in a position that corresponds to one of the multiple scroll amount indicators to adjust the scroll amount for the on-screen document. In this example, the scroll amount represents how much of the on-screen document scrolls when triggered by a user interaction with the cursor control device. In one embodiment, an animated cue is displayed to illustrate a change in the scroll amount when the slider is placed in a new position.
According to another aspect of the present invention, an exemplary method of the invention provides a coasting function when an on-screen document scrolls. This exemplary method includes detecting a user interaction with a scrolling device, determining that the coasting function is in an enabled state, scrolling the on-screen document while detecting the user interaction, detecting that the user interaction ended, and then continuing to scroll the on-screen document after detecting that the user interaction ended. The user interaction with the scrolling device may end at any portion of the scrolling device. In one typical example of this method, the scrolling device is disposed on a mouse, and the user interaction with the scrolling device includes rolling a scrolling wheel of the scrolling device. In one embodiment, after the end of the user interaction with the scrolling device is detected, the speed of scrolling the on-screen document is gradually reduced until the on-screen document no longer scrolls. In an alternate embodiment, in which the coasting function is set to a lock setting, after the end of the user interaction with the scrolling device is detected, the on-screen document continues to scroll until a user command to stop scrolling is received. The user command to stop scrolling may, for example, be triggered by a user tapping the scrolling device.